Hypergraph-based Dynamic Partitioning and Load Balancing

نویسندگان

  • Umit V. Catalyurek
  • Doruk Bozdağ
  • Erik G. Boman
  • Karen D. Devine
  • Robert Heaphy
  • Lee Ann Riesen
چکیده

1.1 INTRODUCTION An important component of parallel scientific computing is the assignment of work to processors. This assignment problem is also known as partitioning or mapping. The goal of the assignment problem is to find a task-to-processor mapping that will minimize the total execution time. Although efficient optimal solutions for certain restricted variations, such as chain-or tree-structured programs exist [21], the general problem is NP-hard [28]. We consider this general version where any task can potentially be assigned to any processor. In the literature, the task-to-processor assignment problem is usually solved by a two-step approach: first tasks are partitioned into load-balanced clusters of tasks, then these clusters are mapped to processors. In the partitioning step, a common goal is to minimize the interprocessor communication while maintaining a computational load balance among processors. Partitioning occurs at the start of a computation (static partitioning), but often, reassignment of work is done during a computation (dynamic partitioning or repartitioning) as the work distribution changes over the course of the computation. Repar-titioning usually includes both partitioning and mapping. While distinction between partitioning, load balancing and mapping can be made as described, throughout this chapter we will use the terms interchangeably to refer the assignment problem. We will assume that the mapping step of the two-step approach either is trivial, or inherent in the partitioning approach. Dynamic partitioning is an important feature in parallel adaptive computations [9]. Even if the original problem is well balanced, e.g., by using graph or hypergraph partitioning, the computation may become unbalanced over time due to dynamic changes. A classic example is simulation based on adap-tive mesh refinement, in which the computational mesh changes between time steps. The difference is often small, but over time, the cumulative change in the mesh becomes significant. Therefore dynamic load balancing may be required periodically to re-balance the application, that is, move data among processors to improve the load balance. Dynamic load balancing or repartitioning is a well studied that has multiple objectives with complicated trade-offs among them: 1. good load balance in the new data distribution; 2. low communication cost within the application (as determined by the new distribution); 3. low data migration cost to move data from the old to the new distribution ; and 4. short repartitioning time. Total execution time is commonly modeled [26, 34] as follows to account for these objectives: t tot = α(t comp + t comm) …

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A repartitioning hypergraph model for dynamic load balancing

In parallel adaptive applications, the computational structure of the applications changes over time, leading to load imbalances even though the initial load distributions were balanced. To restore balance and to keep communication volume low in further iterations of the applications, dynamic load balancing (repartitioning) of the changed computational structure is required. Repartitioning diff...

متن کامل

Dynamic Load Balancing for Adaptive Scientific Computations via Hypergraph Repartitioning

Adaptive scientific computations require that periodic repartitioning (load balancing) occur dynamically to maintain load balance. Hypergraph partitioning is a successful model for minimizing communication volume in scientific computations, and partitioning software for the static case is widely available. In this paper, we present a new hypergraph model for the dynamic case, where we minimize ...

متن کامل

Improving the Load Balancing Performance of Vlasiator

This whitepaper describes the load-balancing performance issues that are observed and tackled during the petascaling of the Vlasiator codes. Vlasiator is a Vlasov-hybrid simulation code developed in Finnish Meteorological Institute (FMI). Vlasiator models the communications associated with the spatial grid operated on as a hypergraph and partitions the grid using the parallel hypergraph partiti...

متن کامل

Investigation of Load Balancing Scalability in Space Plasma Simulations

This whitepaper describes the load-balancing performance issues that are observed and tackled during the petascaling of a space plasma simulation code developed at the Finnish Meteorological Institute (FMI). It models the communication pattern as a hypergraph, and partitions the computational grid using the parallel hypergraph partitioning scheme (PHG) of the Zoltan partitioning framework. The ...

متن کامل

A Hypergraph Partition Based Approach to Dynamic Deployment for Service-Oriented Multi-tenant SaaS Applications

In a service-oriented multi-tenant SaaS application, all tenants share services and user requests of the service change dynamically. In order to provide high-quality web services, we must solve the problem of the load unbalance caused by dynamic user requests’ change. This paper proposes an approach based on hypergraph partition to keep load balance for serviceoriented multi-tenant SaaS applica...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007